package com.lap.generator.domain;

import com.lap.generator.domain.valueobject.FieldModel;
import java.util.List;
import lombok.Builder;
import lombok.Data;
import lombok.experimental.Accessors;

@Accessors(chain = true)
@Builder
@Data
public class TemplateModel {
  private String author;
  private String version;

  /** 类名 */
  private String className;

  /** 基于类名的前字母小写驼峰名字 */
  private String lowerName;

  /** 基于类名的全部小写下划线名字 */
  private String mapping;

  /** 原始表名 */
  private String tableName;

  /** 原始表备注 */
  private String tableComment;

  /** 属性列表 */
  private List<FieldModel> fields;

  // 额外属性
  /** 项目基础包名 */
  private String basePackage;

  /** 模块名 */
  private String module;
}
